home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / editors / emacs / xemacs / xemacs-1.006 / xemacs-1 / lib / xemacs-19.13 / lisp / packages / emacsbug.el < prev    next >
Encoding:
Text File  |  1995-03-25  |  2.7 KB  |  79 lines

  1. ;;; emacsbug.el --- command to report Emacs bugs to appropriate mailing list.
  2.  
  3. ;; Copyright (C) 1985, 1994 Free Software Foundation, Inc.
  4.  
  5. ;; Author: K. Shane Hartman
  6. ;; Maintainer: FSF
  7. ;; Keywords: maint
  8.  
  9. ;; Not fully installed because it can work only on Internet hosts.
  10. ;; This file is part of XEmacs.
  11.  
  12. ;; XEmacs is free software; you can redistribute it and/or modify it
  13. ;; under the terms of the GNU General Public License as published by
  14. ;; the Free Software Foundation; either version 2, or (at your option)
  15. ;; any later version.
  16.  
  17. ;; XEmacs is distributed in the hope that it will be useful, but
  18. ;; WITHOUT ANY WARRANTY; without even the implied warranty of
  19. ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  20. ;; General Public License for more details.
  21.  
  22. ;; You should have received a copy of the GNU General Public License
  23. ;; along with XEmacs; see the file COPYING.  If not, write to the Free
  24. ;; Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  25.  
  26. ;;; Synched up with: FSF 19.28.
  27.  
  28. ;;; Commentary:
  29.  
  30. ;; `M-x report-emacs-bug ' starts an email note to the Emacs maintainers
  31. ;; describing a problem.  Here's how it's done...
  32.  
  33. ;;; Code:
  34.  
  35. ;; >> This should be an address which is accessible to your machine,
  36. ;; >> otherwise you can't use this file.  It will only work on the
  37. ;; >> internet with this address.
  38.  
  39. (require 'sendmail)
  40.  
  41. (defvar bug-gnu-emacs "xemacs@cs.uiuc.edu"
  42.   "Address of site maintaining mailing list for GNU Emacs bugs.")
  43.  
  44. (defvar report-emacs-bug-orig-text nil
  45.   "The automatically-created initial text of bug report.")
  46.  
  47. ;;;###autoload
  48. (defun report-emacs-bug (topic)
  49.   "Report a bug in GNU Emacs.
  50. Prompts for bug subject.  Leaves you in a mail buffer."
  51.   (interactive "sBug Subject: ")
  52.   (mail nil bug-gnu-emacs topic)
  53.   (goto-char (point-min))
  54.   (re-search-forward (concat "^" (regexp-quote mail-header-separator) "\n"))
  55.   (insert "In " (emacs-version) "\n\n")
  56.   (message (substitute-command-keys "Type \\[mail-send-and-exit] to send bug report."))
  57.   ;; Make it less likely people will send empty messages.
  58.   (make-local-variable 'mail-send-hook)
  59.   (add-hook 'mail-send-hook 'report-emacs-bug-hook)
  60.   (save-excursion
  61.     (goto-char (point-max))
  62.     (skip-chars-backward " \t\n")
  63.     (make-local-variable 'report-emacs-bug-orig-text)
  64.     (setq report-emacs-bug-orig-text (buffer-substring (point-min) (point)))))
  65.  
  66. (defun report-emacs-bug-hook ()
  67.   (save-excursion
  68.     (goto-char (point-max))
  69.     (skip-chars-backward " \t\n")
  70.     (if (and (= (- (point) (point-min))
  71.         (length report-emacs-bug-orig-text))
  72.          (equal (buffer-substring (point-min) (point))
  73.             report-emacs-bug-orig-text))
  74.     (error "No text entered in bug report"))))
  75.  
  76. (provide 'emacsbug)
  77.  
  78. ;;; emacsbug.el ends here
  79.